package zhu.areas.user.data;

import java.util.Date;
import zhu.areas.dic.data.FieldType;
import zhu.areas.dic.data.Role;


/**@hibernate.class table="T_Expert"  dynamic-insert="true" dynamic-update="true"
 * @author Administrator
 * */
public class Expert {
	
	private int       expID;
	private String    expName;
	private Role      expType;
	private String    email;
	private String    companyName;
	private FieldType expField;
	private String    degree;
	private String    detail;
	private Date      appTime;
	private int       state;
	
	private User user;

	public Expert() {
		super();
		// TODO Auto-generated constructor stub
	}
	public Expert(int expID) {
		super();
		this.expID = expID;
	}
	
	/**
	 * @hibernate.id column="ExpID" unsaved-value="null"
	 *               generator-class="foreign"
	 * @hibernate.generator-param name="property" value="user"
	 */
	public int getExpID() {
		return expID;
	}
	public void setExpID(int expID) {
		this.expID = expID;
	}
	
	/**
	 * @hibernate.property column = "ExpName"    not-null="true"
	 * @return
	 */
	public String getExpName() {
		return expName;
	}
	public void setExpName(String expName) {
		this.expName = expName;
	}
	
	/** 
	*@hibernate.many-to-one class="zhu.areas.dic.data.Role"    not-null="true"
	* column="ExpType" 
	*/
	public Role getExpType() {
		return expType;
	}
	public void setExpType(Role expType) {
		this.expType = expType;
	}
	
	/**
	 * @hibernate.property column = "Email"    
	 * @return
	 */
	public String getEmail() {
		return email;
	}
	public void setEmail(String email) {
		this.email = email;
	}
	/**
	 * @hibernate.property column = "CompanyName"    
	 * @return
	 */
	public String getCompanyName() {
		return companyName;
	}
	public void setCompanyName(String companyName) {
		this.companyName = companyName;
	}
	
	/** 
	*@hibernate.many-to-one class="zhu.areas.dic.data.FieldType"    not-null="true"
	* column="ExpField" 
	*/
	public FieldType getExpField() {
		return expField;
	}
	public void setExpField(FieldType expField) {
		this.expField = expField;
	}
	
	/**
	 * @hibernate.property column = "Degree"    not-null="true"
	 * @return
	 */
	public String getDegree() {
		return degree;
	}
	public void setDegree(String degree) {
		this.degree = degree;
	}
	
	/**
	 * @hibernate.property column = "Detail"   
	 * @return
	 */
	public String getDetail() {
		return detail;
	}
	public void setDetail(String detail) {
		this.detail = detail;
	}
	
	/**
	 * @hibernate.property column = "ApplyTime"    not-null="true"
	 * @return
	 */
	public Date getAppTime() {
		return appTime;
	}
	public void setAppTime(Date appTime) {
		this.appTime = appTime;
	}
	
	/**
	 * @hibernate.property column = "State"    not-null="true"
	 * @return
	 */
	public int getState() {
		return state;
	}
	public void setState(int state) {
		this.state = state;
	}
	

	/**
	 * @hibernate.one-to-one column="userID"  class="zhu.areas.user.data.User"
	 *                      
	 */
	public User getUser() {
		return user;
	}
	public void setUser(User user) {
		this.user = user;
	}
	
	
}
